문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 Visual Studio (문단 편집) == 특징 == 기존에 마이크로소프트가 제작하던 [[컴파일러]]인 Microsoft C/C++ 컴파일러를 나중에 Visual C++로 개명하면서, 같이 'Visual'을 접두어로 붙이던 [[비주얼 베이직|Visual Basic]]과 합쳐서 패키지로 내놓은 것. 초기에만 해도 DOS 시절에는 Borland C++에, DOS 후기에는 Watcom C++에 뒤쳐졌으나 Windows 시대로 들어서면서 급격히 세를 불려 지금은 윈도우 프로그램 개발에 독보적인 위치를 차지하고 있다. 기본적인 코드 베이스로는 [[C++]]가, UI 등 일부분에 한해 [[C\#]]이 쓰였다. 마이크로소프트가 개발한 IDE인 만큼 윈도우 진영에서는 [[사실상 표준]] 개발 툴이며, 디버깅 면에서는 타의 추종을 불허한다. 단점으로 [[C언어]] 사양(C99, C11, C17[* 표준정립은 2017년 10월이나 발표가 2018년 6월에 이루어져서 C18과 동의어이다.])의 업데이트 지원이 부족한 점이 있었다. 이 때문에 과거 버전에서는 C11, C17은 커녕 C99 문법조차 제대로 지원하지 않는 모습을 볼 수 있었다. 이 부분은 상당기간 개선되지 않았으나, 다행히 [[https://devblogs.microsoft.com/cppblog/c11-and-c17-standard-support-arriving-in-msvc/|2020년에 VS2019 16.8 버전부터 C11, C17을 공식적으로 지원하게끔 변경됨으로써 해결됐다.]] C++에 대한 지원은 아직 표준으로 정해지지 않은 것들도 실험 기능으로 지원할 정도로 지원이 좋다. 텍스트 자동완성(인텔리센스)과 디버깅 옵션[* IDE 로컬 디버거가 비주얼 스튜디오의 바이너리 파일(devenv.exe)에 포함되어 있다.], 방대한 플러그인 생태계는 다른 툴이 범접하기 어려운 수준을 보여주며 현존하는 [[프로그램]]들의 상당수가 비주얼 스튜디오를 이용해 제작됐다. 또한 다수의 개발 툴이나 SDK들이 비주얼 스튜디오에 기반해서 플러그인 형태로 제공되는 경우가 늘어나고 있고, [[언리얼 엔진]]이나 [[유니티(게임 엔진)|유니티 엔진]] 등의 범용 [[게임 엔진]]들도 비주얼 스튜디오를 기본 스크립트 에디터로 사용하고 있으며 ATMEL Studio 7 같은 프로그램에서는 아예 VS의 에디터 부분만 떼어와서 자사 IDE에 쓰는 경우도 많다. 하나의 패키지 형태로 사용할 때는 별도의 개발 툴이 필요 없다. (굳이 쓴다면 Visual AssistX나 SVN 플러그인 정도) 비주얼 스튜디오의 이 패키지 안에는 프로그램 개발에 필요한 모든 것이 다 들어 있다. 심지어 [[데이터베이스]]도 준다! 특히 C++ 빌드 환경을 자체적으로 내장하고 있다는 것은 초보자에게 커다란 장점이다. 비주얼 스튜디오 다음으로 많이 쓰이는 [[Visual Studio Code|VS Code]] C/C++ 플러그인이나 [[JetBrains]]의 [[CLion]]만 봐도, 툴 자체는 훌륭하지만 C++를 사용하려면 컴파일러, 디버거 및 [[Make]]/CMake 등의 빌드 환경을 스스로 세팅해야 하며 이를 숙지하지 못하면 시작부터 난관에 부딪히게 된다는 단점이 있다.[* 단, 이러한 편리성은 [[Microsoft Windows|윈도우]] 운영체제에서만 해당된다.] 마이크로소프트의 정책에 따라 프로그래머의 저변을 넓히기 위해 다른 상용 컴파일러 제조사에서는 하기 어려운 파격적인 프로모션을 많이 진행하고 있다. 프로그래밍을 공부하고 싶은 사람은 마음만 먹으면 이들을 무료로 사용하는 것도 가능하다. 현재는 개인 사용자에 한해 툴 자체를 무료로 제공하는 중이다. 컴파일러를 개발, 판매하는 경쟁사의 예로 구 Borland의 후신인 코드기어 등이 있다. 이쪽은 수백만 원을 가볍게 호가하는 등 패키지 가격이 만만치 않기 때문에 기업에서는 [[마이크로소프트]]에서 제공하는 1년 라이선스(정확한 기간은 프로그램 버전마다 약간씩 다름)의 프로페셔널 버전이나 엔터프라이즈 버전을 사용한다. 비주얼 스튜디오로 개발할 수 있는 [[프로그래밍 언어]]는 크게 [[비주얼 베이직|Visual Basic]]([[Visual Basic .NET]])[* 최근 버전에서는 .NET 버전의 Visual Basic만을 제공한다.], [[C]]/[[C++]]([[Win32 API]], [[MFC]]), [[C\#]]([[ASP.NET]], WinForms, WPF) 세 개로 나뉜다. 최근 버전으로 오면서 python, node.js등 여러가지를 지원하기도 한다. 또한 통합 개발 환경답게 이 언어로 만들 수 있는 UI 제작도구(디자인 툴)도 제공된다. UI를 만들 때 순수 [[날코딩]](타이핑 노가다)으로 만드는 방식도 있지만 그래도 대부분은 비주얼 스튜디오를 이용해 UI를 만든다. 왜냐면 날코딩으로 작업하는 쪽이 속도도 빠르고 간단한 프로그램을 만들 때는 편하지만 디자인 툴을 사용하는 쪽이 결과물도 이쁘고 생산성이 높기 때문. 프로그램의 엄청난 크기와 많은 기능들에 비해 최적화는 상당히 잘 되어 있어, 저사양 환경에서도 문제 없이 잘 돌아간다. 마이크로소프트가 비주얼 스튜디오에 신경을 많이 쓰는 이유는 아무리 운영체제가 좋아도 그 운영체제를 기반으로 돌아가는 프로그램이 없다면 운영체제는 무용지물이라는 사실을 과거부터 철저하게 학습해 왔기 때문이다. 그래서 MS에서도 개발자들에 대한 지원은 다른 업체들에 비해 화끈하게 해주는 편이다. 커뮤니티 버전이 출시되기 전에도 백만원 가깝게 하는 비주얼 스튜디오를 심심하면 무료로 뿌려댔으며, 다니는 대학이 MSDN AA에 가입되어 있다면 액면가로는 수천 달러 이상을 호가하는 얼티밋 버전도 무료로 받을 수 있었다. 2013년부터는 아예 프로페셔널 버전과 기능이 비슷한 커뮤니티 버전을 개인 사용자에 한해 무료로 풀고 있다. 게다가 비주얼 스튜디오의 완성도와 편의성은 심지어 MS나 윈도우를 싫어하는 비(非) 윈도우 개발자들도 인정하고 들어가는 부분이다. 아예 편집의 개념 자체가 다른 [[vi]]/[[Emacs]] 프로그래머들은 평가 기준이 다르겠지만, IDE로서의 안정성이나 편집 기능, 반응 속도, 인텔리센스 등 전반적인 면에서 [[이클립스(통합 개발 환경)|이클립스 CDT]]나 [[Xcode]]보다 훨씬 우수하며 부가적인 기능들도 탄탄하다. 사실 [[vi]] 같은 편집기를 사용하는 유저 중에는 유닉스 C 프로그래머가 많은데, C는 IDE의 필요성이 상대적으로 적은 언어인 데다가 결정적으로 MS에서 미는 언어가 아니기 때문에 비주얼 스튜디오에서도 지원은 열악하다. 즉, 이 사람들에게 VS는 어차피 vi보다 편집 편의성도 떨어지면서 무겁고 육중한 프로그램인 것이다. 이러한 문제로 실제로 [[https://www.jetbrains.com/lp/devecosystem-2021/c/|JetBrains 2021 Survey]]를 보면 [[CLion]]을 개발한 [[JetBrains|젯브레인]]에서 진행한 설문조사임에도 불구하고 C언어 개발자들은 vscode를 가장 많이(32%) 사용하는 것으로 나왔다. 이는 vscode가 리눅스 등도 지원하는 크로스 플랫폼일 뿐 아니라 위의 VS와 사실상 정반대의 특성을 가졌기 때문일 것으로 보인다. 윈도우 애플리케이션에서는 더 이상 C를 사용하는 경우가 거의 없다. 비주얼 스튜디오에서 제대로 지원 안 하는 것도 있지만 당장 순수 C로 GUI 처리하기가 생노가다이기 때문. ~~그 짓 한번 하고 나면 윈도우를 심층적으로 이해하게 되는 장점은 있다.~~ 유닉스 진영에서는 커맨드 라인에서 실행되거나 GUI를 분리하는 경우가 꽤 많기 때문에 아직 C 프로그래밍이 활발한 편이다. 주로 사용되는 남아있는 분야 중 하나가 OS(특히 [[커널(운영 체제)|커널]])인데, 윈도우 역시 C로 개발되기는 하지만 문 걸어 잠그고 회사 내에서 개발하는 것이니 일반 애플리케이션 프로그래머들은 체감이 어렵다. 비주얼 스튜디오에는 단순 개발 툴뿐만 아니라 팀 작업을 위한 서버도 제공한다. 그리고 비주얼 스튜디오 갤러리에서 여러 IDE를 다운받아, 자신만의 비주얼 스튜디오 세계를 구축할 수도 있다. 자신만의 비주얼 스튜디오 테마를 구축한다든지, [[https://visualstudiogallery.msdn.microsoft.com/d4aa9c26-c122-45c9-a4bb-6e695146ea5b|심지어는 이런 것도.]] 이 IDE는 Microsoft 2015 Tech Days에서도 소개된 바 있다. 마소 직원이 소개를 해 주는데, 핑크핑크한 커스텀 테마를 적용시켜 놓고, '빌드 버튼을 누르면 프로나마촹이 윙크도 해 줍니다' 하면서 빌드 버튼을 눌렀더니 앞자리에 앉아 있던 사람들이 환호성을 질렀다. [[https://channel9.msdn.com/Events/TechDays/TDK2015/T2-3|해당 TechDays Korea 2015, 1분 40초 경 참고]] 또한 이용자의 수만큼이나 다양한 서드파티 참여도 활발해서 비주얼 스튜디오에 도전과제를 부가하는 기능도 만들어졌다. [[Visual Studio/도전과제]] 항목 참조. 비주얼 스튜디오는 커뮤니티 에디션이 나오면서 개인 사용자에게 무료로 제공하게 됐기 때문에 개인용으로 쓸 경우 더 이상 구입에 부담을 가지지 않아도 된다. 더불어 학생 신분을 가지고 있다면 [[Microsoft DreamSpark]]에서 비주얼 스튜디오와 함께 활용할 수 있는 윈도우 서버, SQL 서버 등을 무료로 얻을 수 있다. [[대학생]] 뿐만 아니라 중, 고등학생도 포함되며 초등학생 역시 학교의 도서대출증을 이용해 학생신분 증명이 가능하다. 학교에서 이메일을 발급해주지 않는다면 본인의 이름과 재학기간을 증명할 수 있는 서류 또는 학생증을 찍어서 신청양식에 첨부해 인증할 수 있다. 초, 중, 고등학생은 학교 이메일을 학생들에게 주는 경우가 거의 없기 때문에 그냥 대부분의 경우라면 초, 중, 고등학생도 이쪽에 포함된다고 보면 된다. 자세한 것은 [[Microsoft DreamSpark]] 항목 참고.저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기